<?php
 
$title=$_POST['title'];
$start=$_POST['start'];
$end=$_POST['end'];
 
// connexion à la base de données
 try {
 $bdd = new PDO('mysql:host=localhost;dbname=fortelco_claboral', 'root', 'root');
 } catch(Exception $e) {
 exit('Impossible de se connecter à la base de données.');
 }
 
$sql = "INSERT INTO horario (tarea, fechainicio, fechafin, dni, manana, tarde, noche, madrugada)
		VALUES (:title, :start, :end, 46812278,
		case /*Mañana*/ 
			when fechainicio between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '06:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '12:00:00') 
				and fechafin between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '06:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '12:00:00') then  
			
			EXTRACT(HOUR FROM fechafin) - EXTRACT(HOUR FROM fechainicio) + (EXTRACT(MINUTE FROM fechafin) - EXTRACT(MINUTE FROM fechainicio))/60
			
			when fechainicio between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '06:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '12:00:00') 
				and fechafin not between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '06:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '12:00:00') then  
			
			EXTRACT(HOUR FROM TIMESTAMP '2001-02-16 12:00:00') - EXTRACT(HOUR FROM fechainicio) - EXTRACT(MINUTE FROM fechainicio)/60
			
			when fechafin between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '06:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '12:00:00') 
				and fechainicio not between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '06:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '12:00:00') then  
			
			EXTRACT(HOUR FROM fechafin) - EXTRACT(HOUR FROM TIMESTAMP '2001-02-16 06:00:00')  + EXTRACT(MINUTE FROM fechafin)/60
			else  
			0
		END,

		case /*Tarde*/
			when fechainicio between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '12:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '18:00:00') 
				and fechafin between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '12:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '18:00:00') then  
			
			EXTRACT(HOUR FROM fechafin) - EXTRACT(HOUR FROM fechainicio) + (EXTRACT(MINUTE FROM fechafin) - EXTRACT(MINUTE FROM fechainicio))/60
			
			when fechainicio between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '12:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '18:00:00') 
				and  fechafin not between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '12:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '18:00:00') then  
			
			EXTRACT(HOUR FROM TIMESTAMP '2001-02-16 18:00:00') - EXTRACT(HOUR FROM fechainicio) - EXTRACT(MINUTE FROM fechainicio)/60
			
			when fechafin between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '12:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '18:00:00') 
				and fechainicio not between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '12:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '18:00:00') then  
			
			EXTRACT(HOUR FROM fechafin) - EXTRACT(HOUR FROM TIMESTAMP '2001-02-16 12:00:00') + EXTRACT(MINUTE FROM fechafin)/60
			else  
			0
		END,

		case /*Noche*/
			when fechainicio between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '18:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '23:59:59') 
				and fechafin between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '18:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '23:59:59') then  
			
			EXTRACT(HOUR FROM fechafin) - EXTRACT(HOUR FROM fechainicio) + (EXTRACT(MINUTE FROM fechafin) - EXTRACT(MINUTE FROM fechainicio))/60
			
			when fechainicio between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '18:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '23:59:59') 
				and  fechafin not between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '18:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '23:59:59') then  
			
			EXTRACT(HOUR FROM TIMESTAMP '2001-02-16 23:59:59') - EXTRACT(HOUR FROM fechainicio) - EXTRACT(MINUTE FROM fechainicio)/60
			
			when fechafin between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '18:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '23:59:59') 
				and fechainicio not between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '18:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '23:59:59') then  
			
			EXTRACT(HOUR FROM fechafin) - EXTRACT(HOUR FROM TIMESTAMP '2001-02-16 18:00:00') + EXTRACT(MINUTE FROM fechafin)/60
			else  
			0
		END,

		case /*Madrugada*/
			when fechainicio between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '00:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '06:00:00') 
				and fechafin between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '00:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '06:00:00') then  
			
			EXTRACT(HOUR FROM fechafin) - EXTRACT(HOUR FROM fechainicio) + (EXTRACT(MINUTE FROM fechafin) - EXTRACT(MINUTE FROM fechainicio))/60
			
			when fechainicio between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '00:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '06:00:00') 
				and fechafin not between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '00:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '06:00:00') then  
			
			EXTRACT(HOUR FROM TIMESTAMP '2001-02-16 06:00:00') - EXTRACT(HOUR FROM fechainicio) - EXTRACT(MINUTE FROM fechainicio)/60
			
			when fechafin between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '00:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '06:00:00') 
				and fechainicio not between CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '00:00:00') and CONCAT(CONCAT(EXTRACT(year FROM fechainicio), '-', EXTRACT(month FROM fechainicio), '-', EXTRACT(day FROM fechainicio)),' ', '06:00:00') then  
			
			EXTRACT(HOUR FROM fechafin) - EXTRACT(HOUR FROM TIMESTAMP '2001-02-16 00:00:00') + EXTRACT(MINUTE FROM fechafin)/60
			else  
			0
		END)";
$q = $bdd->prepare($sql);
$q->execute(array(':title'=>$title, ':start'=>$start, ':end'=>$end));
?>